package com.xc.hotelmgr.webapi.modules.op.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xc.hotelmgr.webapi.common.utils.PageUtils;
import com.xc.hotelmgr.webapi.common.utils.R;
import com.xc.hotelmgr.webapi.modules.mq.dto.OpDtStoreGroup;
import com.xc.hotelmgr.webapi.modules.op.entity.GroupDto;
import com.xc.hotelmgr.webapi.modules.op.entity.HtlGroupDto;
import com.xc.hotelmgr.webapi.modules.op.entity.HtlGroupEntity;

import java.util.List;
import java.util.Map;

/**
 *
 *
 * @author kemmy
 * @email kemmy@gmail.com
 * @date 2020-09-29 14:30:31
 */
public interface HtlGroupService extends IService<HtlGroupEntity> {

    PageUtils queryPage(Map<String, Object> params);

    R saveHtlGroup(GroupDto groupDto);

    PageUtils sqlQueryPage(Map<String, Object> params);


    Long sqlQueryByGroupId(Integer id);

    int queryOurRpCnt(Integer groupId);

    List<Long> selectByGIdSId(Integer groupId, Integer storeId);

    List<HtlGroupEntity> selectByStoreId(Integer storeId);

    boolean hotelInit(Integer groupId, Integer storeId, String redisK);

    List<HtlGroupEntity> getOpHtlGroupHtLogicRoomByGIdAndSId(Integer groupId, Integer storeId);

    void delHtlGroup(List<HtlGroupEntity> htlGroupEntitys);

    List<OpDtStoreGroup> getStoreHotelByGroup(HtlGroupDto htlGroupDto);

    List<Long> getHtlIdsByGroupId(Integer groupId);

    List<Long> getHotelIdsByStoreId(Integer storeId);

}

